<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Taskflow Handbook</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link rel="icon" type="image/x-icon" href="favicon.ico" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname"><a href="https://taskflow.github.io/">Taskflow</a>
   &#160;<span id="projectnumber">3.0.0-Master-Branch</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('cuda__device_8hpp.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">cuda_device.hpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><a href="cuda__device_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classtf_1_1cudaScopedDevice.html">tf::cudaScopedDevice</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">RAII-styled device context switch.  <a href="classtf_1_1cudaScopedDevice.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:abffa70155a5f160b7ceb86ee52ab2136"><td class="memItemLeft" align="right" valign="top"><a id="abffa70155a5f160b7ceb86ee52ab2136"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#abffa70155a5f160b7ceb86ee52ab2136">tf::cuda_get_num_devices</a> ()</td></tr>
<tr class="memdesc:abffa70155a5f160b7ceb86ee52ab2136"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the number of available devices <br /></td></tr>
<tr class="separator:abffa70155a5f160b7ceb86ee52ab2136"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a235f5a9ce203d538eec1f4114221d473"><td class="memItemLeft" align="right" valign="top"><a id="a235f5a9ce203d538eec1f4114221d473"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a235f5a9ce203d538eec1f4114221d473">tf::cuda_get_device</a> ()</td></tr>
<tr class="memdesc:a235f5a9ce203d538eec1f4114221d473"><td class="mdescLeft">&#160;</td><td class="mdescRight">gets the current device associated with the caller thread <br /></td></tr>
<tr class="separator:a235f5a9ce203d538eec1f4114221d473"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade2938289fa49aafc9b2b7b090deaa22"><td class="memItemLeft" align="right" valign="top"><a id="ade2938289fa49aafc9b2b7b090deaa22"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#ade2938289fa49aafc9b2b7b090deaa22">tf::cuda_set_device</a> (int id)</td></tr>
<tr class="memdesc:ade2938289fa49aafc9b2b7b090deaa22"><td class="mdescLeft">&#160;</td><td class="mdescRight">switches to a given device context <br /></td></tr>
<tr class="separator:ade2938289fa49aafc9b2b7b090deaa22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a403b679694f4c85c857163b47e84d566"><td class="memItemLeft" align="right" valign="top"><a id="a403b679694f4c85c857163b47e84d566"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a403b679694f4c85c857163b47e84d566">tf::cuda_get_device_property</a> (int i, cudaDeviceProp &amp;p)</td></tr>
<tr class="memdesc:a403b679694f4c85c857163b47e84d566"><td class="mdescLeft">&#160;</td><td class="mdescRight">obtains the device property <br /></td></tr>
<tr class="separator:a403b679694f4c85c857163b47e84d566"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e82b8a929e12349240276e34ec9f8c8"><td class="memItemLeft" align="right" valign="top"><a id="a0e82b8a929e12349240276e34ec9f8c8"></a>
cudaDeviceProp&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a0e82b8a929e12349240276e34ec9f8c8">tf::cuda_get_device_property</a> (int i)</td></tr>
<tr class="memdesc:a0e82b8a929e12349240276e34ec9f8c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">obtains the device property <br /></td></tr>
<tr class="separator:a0e82b8a929e12349240276e34ec9f8c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff8073c78daa741df76b530a0e602287"><td class="memItemLeft" align="right" valign="top"><a id="aff8073c78daa741df76b530a0e602287"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#aff8073c78daa741df76b530a0e602287">tf::cuda_dump_device_property</a> (<a class="elRef" doxygen="/Users/twhuang/PhD/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml:http://en.cppreference.com/w/" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::ostream</a> &amp;os, const cudaDeviceProp &amp;p)</td></tr>
<tr class="memdesc:aff8073c78daa741df76b530a0e602287"><td class="mdescLeft">&#160;</td><td class="mdescRight">dumps the device property <br /></td></tr>
<tr class="separator:aff8073c78daa741df76b530a0e602287"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf813f7ac4249d1b752d1b724f970deb"><td class="memItemLeft" align="right" valign="top"><a id="abf813f7ac4249d1b752d1b724f970deb"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#abf813f7ac4249d1b752d1b724f970deb">tf::cuda_get_device_max_threads_per_block</a> (int d)</td></tr>
<tr class="memdesc:abf813f7ac4249d1b752d1b724f970deb"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum threads per block on a device <br /></td></tr>
<tr class="separator:abf813f7ac4249d1b752d1b724f970deb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8184bb128c446fe383315f3dc15acf6"><td class="memItemLeft" align="right" valign="top"><a id="af8184bb128c446fe383315f3dc15acf6"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#af8184bb128c446fe383315f3dc15acf6">tf::cuda_get_device_max_x_dim_per_block</a> (int d)</td></tr>
<tr class="memdesc:af8184bb128c446fe383315f3dc15acf6"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum x-dimension per block on a device <br /></td></tr>
<tr class="separator:af8184bb128c446fe383315f3dc15acf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9aba5f29135b9da29015c2a367ab1d70"><td class="memItemLeft" align="right" valign="top"><a id="a9aba5f29135b9da29015c2a367ab1d70"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a9aba5f29135b9da29015c2a367ab1d70">tf::cuda_get_device_max_y_dim_per_block</a> (int d)</td></tr>
<tr class="memdesc:a9aba5f29135b9da29015c2a367ab1d70"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum y-dimension per block on a device <br /></td></tr>
<tr class="separator:a9aba5f29135b9da29015c2a367ab1d70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5580f59e633625b2f344bbf477d17c2f"><td class="memItemLeft" align="right" valign="top"><a id="a5580f59e633625b2f344bbf477d17c2f"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a5580f59e633625b2f344bbf477d17c2f">tf::cuda_get_device_max_z_dim_per_block</a> (int d)</td></tr>
<tr class="memdesc:a5580f59e633625b2f344bbf477d17c2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum z-dimension per block on a device <br /></td></tr>
<tr class="separator:a5580f59e633625b2f344bbf477d17c2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a597579c8a9ab31244418e30a5aa74491"><td class="memItemLeft" align="right" valign="top"><a id="a597579c8a9ab31244418e30a5aa74491"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a597579c8a9ab31244418e30a5aa74491">tf::cuda_get_device_max_x_dim_per_grid</a> (int d)</td></tr>
<tr class="memdesc:a597579c8a9ab31244418e30a5aa74491"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum x-dimension per grid on a device <br /></td></tr>
<tr class="separator:a597579c8a9ab31244418e30a5aa74491"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91d5c1609a7542949dd56d08b7c4c645"><td class="memItemLeft" align="right" valign="top"><a id="a91d5c1609a7542949dd56d08b7c4c645"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a91d5c1609a7542949dd56d08b7c4c645">tf::cuda_get_device_max_y_dim_per_grid</a> (int d)</td></tr>
<tr class="memdesc:a91d5c1609a7542949dd56d08b7c4c645"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum y-dimension per grid on a device <br /></td></tr>
<tr class="separator:a91d5c1609a7542949dd56d08b7c4c645"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0373e32a20c7fc90c4f0461ee41bb918"><td class="memItemLeft" align="right" valign="top"><a id="a0373e32a20c7fc90c4f0461ee41bb918"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a0373e32a20c7fc90c4f0461ee41bb918">tf::cuda_get_device_max_z_dim_per_grid</a> (int d)</td></tr>
<tr class="memdesc:a0373e32a20c7fc90c4f0461ee41bb918"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum z-dimension per grid on a device <br /></td></tr>
<tr class="separator:a0373e32a20c7fc90c4f0461ee41bb918"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeca46ac171c4941a75aafddfe7546bfa"><td class="memItemLeft" align="right" valign="top"><a id="aeca46ac171c4941a75aafddfe7546bfa"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#aeca46ac171c4941a75aafddfe7546bfa">tf::cuda_get_device_max_shm_per_block</a> (int d)</td></tr>
<tr class="memdesc:aeca46ac171c4941a75aafddfe7546bfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the maximum shared memory size in bytes per block on a device <br /></td></tr>
<tr class="separator:aeca46ac171c4941a75aafddfe7546bfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea1b2af1073496f047d6fb9984cff4f1"><td class="memItemLeft" align="right" valign="top"><a id="aea1b2af1073496f047d6fb9984cff4f1"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#aea1b2af1073496f047d6fb9984cff4f1">tf::cuda_get_device_warp_size</a> (int d)</td></tr>
<tr class="memdesc:aea1b2af1073496f047d6fb9984cff4f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the warp size on a device <br /></td></tr>
<tr class="separator:aea1b2af1073496f047d6fb9984cff4f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fb03793a6b8705026b80ef87599d4d5"><td class="memItemLeft" align="right" valign="top"><a id="a1fb03793a6b8705026b80ef87599d4d5"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a1fb03793a6b8705026b80ef87599d4d5">tf::cuda_get_device_compute_capability_major</a> (int d)</td></tr>
<tr class="memdesc:a1fb03793a6b8705026b80ef87599d4d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the major number of compute capability of a device <br /></td></tr>
<tr class="separator:a1fb03793a6b8705026b80ef87599d4d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71f5177665f4f7e18984ccc57d625602"><td class="memItemLeft" align="right" valign="top"><a id="a71f5177665f4f7e18984ccc57d625602"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a71f5177665f4f7e18984ccc57d625602">tf::cuda_get_device_compute_capability_minor</a> (int d)</td></tr>
<tr class="memdesc:a71f5177665f4f7e18984ccc57d625602"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the minor number of compute capability of a device <br /></td></tr>
<tr class="separator:a71f5177665f4f7e18984ccc57d625602"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad389294b4d1c14219d8d098f796e27c5"><td class="memItemLeft" align="right" valign="top"><a id="ad389294b4d1c14219d8d098f796e27c5"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#ad389294b4d1c14219d8d098f796e27c5">tf::cuda_get_device_unified_addressing</a> (int d)</td></tr>
<tr class="memdesc:ad389294b4d1c14219d8d098f796e27c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries if the device supports unified addressing <br /></td></tr>
<tr class="separator:ad389294b4d1c14219d8d098f796e27c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43ac57f0eca3aa83c04bec3c4da9ab82"><td class="memItemLeft" align="right" valign="top"><a id="a43ac57f0eca3aa83c04bec3c4da9ab82"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a43ac57f0eca3aa83c04bec3c4da9ab82">tf::cuda_get_driver_version</a> ()</td></tr>
<tr class="memdesc:a43ac57f0eca3aa83c04bec3c4da9ab82"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the latest CUDA version (1000 * major + 10 * minor) supported by the driver <br /></td></tr>
<tr class="separator:a43ac57f0eca3aa83c04bec3c4da9ab82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31258ad089c6f847c8cd636cd72d6949"><td class="memItemLeft" align="right" valign="top"><a id="a31258ad089c6f847c8cd636cd72d6949"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cuda__device_8hpp.html#a31258ad089c6f847c8cd636cd72d6949">tf::cuda_get_runtime_version</a> ()</td></tr>
<tr class="memdesc:a31258ad089c6f847c8cd636cd72d6949"><td class="mdescLeft">&#160;</td><td class="mdescRight">queries the CUDA Runtime version (1000 * major + 10 * minor) <br /></td></tr>
<tr class="separator:a31258ad089c6f847c8cd636cd72d6949"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_88dad41ea55ca2177e141d32a93e931c.html">taskflow</a></li><li class="navelem"><a class="el" href="dir_638d51f8e6f20ea8c720cc8c006296ba.html">cuda</a></li><li class="navelem"><a class="el" href="cuda__device_8hpp.html">cuda_device.hpp</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
  </ul>
</div>
</body>
</html>
